1. Pengantar

R Merupakan Salah Satu Bahasa Pemrograman Yang Banyak Digunakan Dalam Analisis Data, Terutama Di Bidang Statistik Dan Data Sains. Dengan Dukungan Berbagai Paket, R Memungkinkan Pengguna Untuk Melakukan Pemrosesan, Eksplorasi, Dan Visualisasi Data Dengan Mudah Dan Efisien. Salah Satu Paket Yang Paling Populer Untuk Visualisasi Data Di R Adalah Ggplot2 .

Paket Ggplot2 , Yang Dikembangkan Berdasarkan Konsep Grammar Of Graphics , Memungkinkan Pengguna Untuk Membuat Grafik Yang Fleksibel Dan Estetis Dengan Pendekatan Berbasis Lapisan (Layering). Melalui Ggplot2, Kita Dapat Dengan Mudah Membuat Berbagai Jenis Visualisasi, Seperti Histogram Untuk Analisis Univariat , Scatter Plot Dan Diagram Batang Untuk Hubungan Bivariat , Serta Heatmap Dan 3D Scatter Plot Untuk Analisis Multivariat .

Dalam Analisis Data, Langkah Pertama Adalah Membaca Dataset , Misalnya Dalam Format CSV Atau Excel, Kemudian Melakukan Eksplorasi Awal Untuk Memahami Struktur Data Dan Distribusi Variabel. Setelah Itu, Kita Dapat Menggunakan Ggplot2 Untuk Menyajikan Data Secara Visual, Sehingga Lebih Mudah Dipahami Dan Dianalisis.

Dengan Memanfaatkan Ggplot2 , Pengguna Dapat Membuat Visualisasi Yang Informatif Dan Menarik, Sehingga Mendukung Pemahaman Data Yang Lebih Mendalam Serta Membantu Dalam Pengambilan Keputusan Berbasis Data.

library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.4.2

2. Membuat Paket ggplot2

Pastikan paket ggplot2 sudah terinstal dan diaktifkan dalam lingkungan R sebelum digunakan. Jika belum terinstal, Anda dapat memasangnya dengan perintah: install.packages(“ggplot2”). Setelah itu, aktifkan paket dengan menjalankan perintah: library(ggplot2).

data <- data.frame(x = rnorm(100), y = rnorm(100))

3. Mengolah dari file data CSV

Sebelum Membaca Data, Pastikan File Berada Di Lokasi Yang Benar Dengan Format Yang Sesuai, Seperti CSV Atau Excel. Jika Diperlukan, Atur Direktori Kerja Menggunakan Setwd() Agar R Dapat Mengakses File Dengan Mudah. Pastikan Juga Paket Yang Relevan, Seperti Readr Untuk File CSV, Telah Diinstal Dan Diaktifkan. Periksa Struktur File Untuk Memastikan Data Terorganisir Dengan Baik, Termasuk Nama Dan Tipe Kolom, Agar Konsisten Dengan Analisis Yang Direncanakan. Gunakan Fungsi Yang Sesuai Untuk Membaca Data, Misalnya Read_Csv() Untuk File CSV Atau Read_Excel() Untuk File Excel. Setelah Data Diimpor, Tinjau Beberapa Baris Awal Dengan Fungsi Seperti Head() Untuk Memastikan File Telah Dibaca Dengan Benar Dan Siap Digunakan.

4. Membaca Data CSV

library(readr)
## Warning: package 'readr' was built under R version 4.4.2
Data <- read_csv("Data.csv", show_col_types = FALSE)
View(Data)
Data <- read.csv("Data.csv")

5. Membuat Visualisasi Data

Setelah Data Yang Akan Digunakan Berhasil Dipanggil, Langkah Selanjutnya Adalah Menentukan Jenis Grafik Yang Sesuai Untuk Visualisasi Data Tersebut. Setiap Jenis Grafik Memiliki Fungsi Dan Tujuan Yang Berbeda, Sehingga Pemilihannya Perlu Disesuaikan Dengan Data Dan Informasi Yang Ingin Disampaikan. Dalam Ujian Ini, Terdapat Setidaknya 4 Jenis Visualisasi Data Yang Harus Dibuat, Seperti Berikut:

5.1 Grafik Univariat

5.1.1 Histogram

Univariat Adalah Jenis Analisis Data Yang Hanya Melibatkan Satu Variabel Tanpa Mempertimbangkan Hubungan Dengan Variabel Lain. Analisis Ini Bertujuan Untuk Memahami Distribusi, Kecenderungan Pusat, Dan Variasi Suatu Variabel Lain. Grafik Univariat Digunakan Untuk Menganalisis Dan Menampilkan Distribusi Satu Variabel, Membantu Memahami Pola, Penyebaran, Dan Karakteristik Data, Seperti Rata-Rata, Median, Dan Outlier. Salah Satu Contohnya Adalah Histogram.

# Histogram angka_harapan_hidup
library(ggplot2)

#memasukkan data ke x yaitu angka harapan hidup
ggplot(Data, aes(x = Angka_Harapan_Hidup)) +
  
  #binwidth = 5: Lebar tiap bin (kelompok) adalah 5
  #fill = "skyblue"  Warna isi histogram.
  #color = "black" Warna garis tepi histogram.
  geom_histogram (binwidth = 5, fill = "chocolate", color = "black") +
  
  labs(title = "Histogram Angka Harapan Hidup", #judul
       x = "Angka Harapan Hidup", #nama sumbu x
       y = "Frekuensi") + #nama sumbu y
  
  #untuk memberikan tamoilan yang bersih
  theme_minimal()

5.2 Grafik Bivariat

Grafik Bivariat Digunakan Untuk Menganalisis Hubungan Antara Dua Variabel, Membantu Memahami Pola, Korelasi, Atau Keterkaitan Di Antara Keduanya. Contohnya Ada Histogram Dan Scatter Plot.

5.2.2 Histogram

# Menghitung total populasi per benua
total_population <- aggregate(Populasi ~ Benua, data = Data, sum)  
# Mengelompokkan data berdasarkan Benua dan menjumlahkan populasi di masing-masing benua

library(ggplot2)  # Memuat library ggplot2 untuk visualisasi data

ggplot(total_population, aes(x = Benua, y = Populasi, fill = Benua)) +  # Membuat plot dengan ggplot
  
  geom_bar(stat = "identity") +  # Menggunakan diagram batang dengan tinggi batang sesuai nilai Populasi
  
  labs(title = "Total Populasi Berdasarkan Benua",  # Menambahkan judul grafik
       x = "Benua",  # Label sumbu X
       y = "Total Populasi") +  # Label sumbu Y
  
  theme_minimal() +  # Menggunakan tema minimalis untuk tampilan yang bersih
  scale_fill_brewer(palette = "YlOrBr")  # Menggunakan skema warna "YlOrBr" (kuning-oranye-coklat)

5.2.3 Scatter Plot

library(ggplot2)

# Membuat scatter plot sederhana untuk analisis bivariat

#memasukkan data ke x yaitu pendapatan per kapita dan y yaitu angka harapan hidup
#color = benua : pemberian warna ke masing-masing benua
ggplot(Data, aes(x = Pendapatan_per_kapita, y = Angka_Harapan_Hidup, color = Benua)) +

  #size = 2 : ukuran point
  geom_point(size = 1) +
  
  labs(title = "Pendapatan Per Kapita dengan Angka Harapan Hidup", #judul
       x = "Pendapatan Per Kapita", #nama sumbu x
       y = "Angka Harapan Hidup") + #nama sumbu y
  
  #untuk memberikan tampilan yang bersih 
  theme_minimal()

  scale_x_log10() 
## <ScaleContinuousPosition>
##  Range:  
##  Limits:    0 --    1

5.3 Grafik Multivariat

Grafik Multivariat Digunakan Untuk Menganalisis Hubungan Atau Pola Di Antara Tiga Atau Lebih Variabel Secara Bersamaan.Grafik Ini Membantu Dalam Memahami Interaksi Dan Pola Yang Lebih Kompleks Dalam Data. Contohnya Ada Heatmap Dan 3D Scatter Plot.

5.3.3 Heatmap

library(ggplot2)
library(reshape2)
## Warning: package 'reshape2' was built under R version 4.4.2
library(readxl)  
## Warning: package 'readxl' was built under R version 4.4.2
# Membaca dataset
Data <- read_csv("Data.csv")
## Rows: 44325 Columns: 8
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (3): geo, Negara, Benua
## dbl (5): Tahun, Angka_Harapan_Hidup, Pendapatan_per_kapita, Populasi, Jumlah...
## 
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
colnames(Data)
## [1] "geo"                   "Negara"                "Benua"                
## [4] "Tahun"                 "Angka_Harapan_Hidup"   "Pendapatan_per_kapita"
## [7] "Populasi"              "Jumlah_anak"
library(RColorBrewer)
# Menghitung rata-rata Angka Harapan Hidup berdasarkan Benua dan Tahun
Data_summary <- aggregate(Angka_Harapan_Hidup ~ Benua + Tahun, data = Data, FUN = mean)

# Mengubah data menjadi format matriks
Data_matrix <- dcast(Data_summary, Benua ~ Tahun, value.var = "Angka_Harapan_Hidup")

# Mengubah data ke dalam format panjang agar bisa dipakai untuk plotting
Data_long <- melt(Data_matrix, id.vars = "Benua", variable.name = "Tahun", value.name = "Angka_Harapan_Hidup")

# Mengonversi kolom Tahun menjadi numerik
Data_long$Tahun <- as.numeric(as.character(Data_long$Tahun))

# Membuat heatmap
ggplot(Data_long, aes(x = Tahun, y = Benua, fill = Angka_Harapan_Hidup)) +
  geom_tile() +  # Menggambar kotak warna
  scale_fill_gradientn(colors = brewer.pal(9, "YlOrBr"),  # Warna dari palet Oranges
                       name = "Angka Harapan Hidup") +  # Nama untuk legenda
  labs(title = "Heatmap Angka Harapan Hidup Berdasarkan Benua dan Tahun",  # Judul plot
       x = "Tahun",  # Label sumbu X
       y = "Benua") +  # Label sumbu Y
  scale_x_continuous(breaks = seq(min(Data_long$Tahun), 
                                   max(Data_long$Tahun), 
                                   by = 30)) +  # Menampilkan label tiap 30 tahun
  theme_minimal(base_size = 13) +  # Tema minimalis
  theme(plot.title = element_text(hjust = 0.5))  # Memusatkan judul

5.3.4 3D scatter plot

3D Scatter Plot Adalah Grafik Sebar Tiga Dimensi Yang Digunakan Untuk Memvisualisasikan Hubungan Antara Tiga Variabel Dalam Sebuah Dataset, Di Mana Setiap Titik Data Direpresentasikan Oleh Koordinat (X,Y,Z) Pada Sumbu X, Y, Dan Z. Grafik Ini Berguna Untuk Menganalisis Pola Distribusi Data, Mengidentifikasi Klaster, Serta Memahami Korelasi Antara Variabel Secara Lebih Mendalam Dibandingkan Scatter Plot Dua Dimensi. Dalam Analisis Data, 3D Scatter Plot Sering Digunakan Di Berbagai Bidang Seperti Statistik, Ilmu Data, Dan Machine Learning Untuk Eksplorasi Data Secara Visual.

suppressPackageStartupMessages(library(plotly))  # Memuat package plotly tanpa menampilkan pesan startup
## Warning: package 'plotly' was built under R version 4.4.2
# Membuat 3D scatter plot
plot_ly(Data,  
  x = ~Pendapatan_per_kapita,  # Sumbu X: Pendapatan per kapita
  y = ~Angka_Harapan_Hidup,    # Sumbu Y: Angka Harapan Hidup
  z = ~Populasi,               # Sumbu Z: Populasi
  type = "scatter3d",          # Menentukan tipe grafik sebagai scatter plot 3D
  mode = "markers",            # Menampilkan titik data tanpa garis penghubung
  color = ~Benua,              # Mewarnai titik berdasarkan variabel Benua
  colors = c("#B84D13", "#CE8887", "#D2691E", "#CD853F")  # Warna untuk setiap benua
) %>%
layout(
  title = "3D Scatter Plot: Pendapatan per kapita, Angka Harapan Hidup dan Populasi", # Judul plot
  scene = list(
    xaxis = list(title = 'Pendapatan per kapita'),  # Label untuk sumbu X
    yaxis = list(title = 'Angka Harapan Hidup'),    # Label untuk sumbu Y
    zaxis = list(title = 'Populasi')               # Label untuk sumbu Z
  )
)

5.4 Grafik Interaktif

5.4.4 Plotly

Grafik Interaktif Digunakan Untuk Menyajikan Data Secara Visual Dengan Cara Yang Memungkinkan Pengguna Untuk Berinteraksi Langsung Dan Memungkinkan Eksplorasi Data Yang Lebih Fleksibel.

library(plotly)
library(dplyr)
## Warning: package 'dplyr' was built under R version 4.4.2
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
# Kode untuk grafik interaktif dengan animasi
plot_ly(Data,  
        # Sumber data yang digunakan  
        x = ~Pendapatan_per_kapita,  # Sumbu X: Pendapatan per kapita  
        y = ~Angka_Harapan_Hidup,    # Sumbu Y: Angka Harapan Hidup  
        type = "scatter",            # Jenis plot: scatter plot  
        mode = "markers",            # Mode: titik (bukan garis)  
        
        # Mengatur warna berdasarkan variabel 'Benua'  
        color = ~Benua,  
        colors = c("#8B4513", "#D2691E", "#CD853F", "#DEB887"), # Nuansa coklat  
        
        # Animasi berdasarkan tahun  
        frame = ~Tahun,  # Tiap tahun akan memiliki frame animasi  
        
        # Menetapkan ID unik untuk tiap titik data (agar transisi animasi lebih halus)  
        ids = ~Negara,   
        
        # Mengatur ukuran titik pada scatter plot  
        marker = list(size = 10)) %>%  # Ukuran titik: 10  

  # Mengatur tampilan layout grafik  
  layout(title = "Interaktif: Pendapatan per Kapita dengan Angka Harapan Hidup",  # Judul plot  
         xaxis = list(title = "Pendapatan per Kapita"),  # Label untuk sumbu X  
         yaxis = list(title = "Angka Harapan Hidup")) %>%  # Label untuk sumbu Y  

  # Mengatur opsi animasi  
  animation_opts(frame = 100, redraw = TRUE) %>%  # Kecepatan animasi, update setiap 100 ms  

  # Menambahkan slider untuk memilih tahun  
  animation_slider(currentvalue = list(prefix = "Tahun: "))  # Slider menampilkan tahun yang dipilih

Kesimpulan

Dari Hasil Analisis Diatas Menunjukkan Bahwa Pendapatan Per Kapita Merosot Positif Dengan Angka Harapan Hidup , Di Negara Mana Dengan Perekonomian Lebih Baik Cenderung Memiliki Harapan Hidup Lebih Tinggi. Populasi Suatu Benua Tidak Selalu Berpengaruh Langsung Terhadap Kesejahteraan , Karena Distribusi Angka Harapan Hidup Bervariasi Di Setiap Wilayah. Tren Perubahan Angka Harapan Hidup Berbeda Di Setiap Benua , Dengan Beberapa Mengalami Peningkatan Yang Signifikan, Sementara Yang Lain Stagnan Atau Menurun. Visualisasi Data Membantu Memahami Pola Hubungan Antar Variabel , Sehingga Dapat Digunakan Untuk Pengambilan Kebijakan Di Bidang Ekonomi, Kesehatan, Dan Pembangunan Sosial.